<!--
 * @Description:
 * @version:
 * @Author: 尹鹏孝
 * @Date: 2023-03-09 16:18:05
 * @LastEditors: 尹鹏孝
 * @LastEditTime: 2023-03-09 17:01:52
-->
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>nextTick技术原理</title>
</head>
<body>
    nextTick用于渲染dom，
    vue在进行数据渲染时候，首先使用了数据劫持，然后使用dep算法，和一个发布订阅接收器，watcher，最后才进行complier渲染。
    并不是数据有更新就新立刻去渲染dom,而是在update数据时候使用了数据防抖技术，一个属性变更多次，只执行最后一次变更。
    而在update Dom的时候，也遵循js队列，将任务进行划分，区分成宏任务和微任务进行处理，
    微型优先执行，然后执行宏任务，以此往复，
    在nextTick内部是异步执行的，首先会根据系统来判断是否支持异步执行的任务
    首先会按照
    宏任务：同步代码，setImmediate,messageChannel,setTimeout/setInterval
    微任务：promise.then,mutationObserver
    vue最后使用setTimeout,
    //nextTick使用场景：create，mounted钩子函数，ref，computed







</body>
</html>